home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 43 / Amiga Format CD43 (1999)(Future Publishing)(GB)(Track 1 of 2)[!][issue 1999-09].iso / -serious- / comms / other / atomic2_0 / atomic2_0.doc < prev    next >
Text File  |  1999-06-14  |  9KB  |  273 lines

  1. Atomic2.Doc
  2.  
  3. Program: Atomic.rexx
  4. Version: 2.0
  5. Author:  John Chufar
  6. Email:   chufarj@telepath.com
  7. Date:    24 Feb 1999
  8.  
  9. References: AmigaOS3.1, AREXX, WorkBench, and AmigaDOS Manuals
  10.  
  11.  
  12. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  13.  
  14. SUPPORT - Web:    "AMIGA ATOMIC CLOCK WEB PAGE"
  15.                   www.telepath.com/chufarj/atomic.html
  16.           Email:  mailto:chufarj@telepath.com
  17.  
  18.  
  19.  
  20. SOFTWARE CHANGES
  21.  
  22. -200 new lines of code (50% larger than 1.5)
  23. -Added new "intelliserve" (TM) Technology
  24. -Added logging
  25. -Added a configuration file
  26. -Added average connect time display option
  27. -Fixed daylight savings time clause
  28. -Added auto-DST set feature
  29. -Added Server Health check
  30. -Added 9 server (stratum-1 servers) redundancy
  31. -Parameters are now OPTIONAL, uses atomic.conf
  32.  
  33.  
  34.  
  35. QUICK START - for experienced users only
  36.  
  37. - Install using installscript
  38. - Remove any parameters used in startup scripts
  39.    old method: s:atomic.rexx n
  40.    new method: s:atomic.rexx
  41.  
  42.  
  43.  
  44. WARNING!!!
  45.  
  46. NEW!  NEW!  NEW!
  47. - Read the DOCS completely before editing the new atomic.conf file!
  48. - Uses DST field.  Set to YES if your timezone EVER is changed.  This is a
  49. one-time edit and your system is only compensated when the timeserver DST
  50. field is set at 0200 on the official United States date.
  51. See section 4.2 below for more information.
  52.  
  53.  
  54.  
  55. NEW FEATURES!!!
  56.  
  57. - "intelliserve" (TM) Technology  -- iT
  58.  
  59. This is a new feature that means over a period of time, you are connected
  60. to the "historically" most responsive server.  This will be unique to each
  61. and every user depending on your "route" through the Internet and each
  62. connection made, time of day, etc.  You, as a user, do NOT want to have to
  63. tell your computer which server to connect to.  You want your computer
  64. to go "get and set" the time as quickly as possible.
  65. "intelliserve" (TM) Technology (iT) provides better computing for you and
  66. will be the way you get other information.  iT is like saying "I would like
  67. to go to ANY Aminet site, but preferably the one that connects best for me",
  68. without being required to perform rigorous anaylsis.
  69.  
  70. iT automatically selects the best servers for you over time and will
  71. eventually, statistically determine your connection methods to best fit
  72. your needs.
  73.  
  74. How does iT work?
  75.  
  76. The atomic.conf file contains a list of 9 "Stratum 1" servers.  The program
  77. will look at each server and review your atomic.log file for the history of
  78. each server and calculate the average for each.
  79.  
  80. The first instance will start creating a log file "s:atomic.log" and will
  81. date-time stamp your connection (or lack of a connection with questionalbe
  82. date-time since the EXACT Atomic Time could not yet be loaded).  Each
  83. subsequent connection adds to the log file which is analyzed EVERY time you
  84. execute atomic.rexx.
  85.  
  86. If a server cannot connect, the default configuration provides for 8 other
  87. servers which will each be tried, so there should NEVER be a time when you
  88. cannot get the time. This is redundancy with a multiple of 9!!!
  89.  
  90. They will be tried in the order of their connection history starting from
  91. the "quickest" to the "slowest".
  92.  
  93.  
  94. - Logging
  95.  
  96. Each event is now logged in the format as follows:
  97.  
  98. LOGFILE=s:atomic.log
  99.  
  100.  
  101. Server          CTime(1)    Date         Actual Time  DiffTime(2)
  102. nist1.datum.com   0.38   24 Feb 1999   14:56:54     0 days 00:00:10
  103.  
  104. (1) Where CTime is the Connection Time in SECONDS.
  105.  
  106. (2) DiffTime is time difference for that connection (if successful)
  107.  
  108. Can you edit the log file????  Yes, but doing so will be playing with the
  109. statistics of your connection to the Internet.  If you feel a timeout, which
  110. takes about 75 seconds, is an unfair number to average with the others for a
  111. server, then you can delete that line or edit as you wish...
  112.  
  113.  
  114. - Easy to edit configuration file
  115.  
  116. Use an ASCII editor. The configuration file has more info for each field.
  117.  
  118. The configuration file has entries as follows:
  119.  
  120. DST='YES'
  121. AVG='NO'
  122. LOGFILE='s:atomic.log'
  123.  
  124. TIMESERVER.1='time-A.timefreq.bldrdoc.gov'
  125. TIMESERVER.2='time-B.timefreq.bldrdoc.gov'
  126. TIMESERVER.3='time-a.nist.gov'
  127. TIMESERVER.4='time-b.nist.gov'
  128. TIMESERVER.5='utcnist.colorado.edu'
  129. TIMESERVER.6='time.nist.gov'
  130. TIMESERVER.7='time-nw.nist.gov'
  131. TIMESERVER.8='utcnist1.reston.mci.net'
  132. TIMESERVER.9='nist1.datum.com'
  133.  
  134.  
  135. Note that the configuration file is in a very specific format.
  136. If an entry is in single quotes, make the changes within the quotes.
  137. I have included the 9 "Stratum 1 Class" timeservers which means they have
  138. DIRECT connections to the time standard.
  139. You may wish to use Stratum 2 Servers for quicker connectivity.
  140.  
  141.  
  142. - Docs now use '#' symbol to mark changed areas.
  143.  
  144. As demonstrated in 3.0 below, the hash '#' mark will make it easier to
  145. "zoom" to the changed areas for experienced users.
  146.  
  147.  
  148. =======================================================================
  149.  
  150.  
  151.  
  152. 1.0 Why?
  153.  
  154. Most clocks 'lose' or 'gain' time over the course of days, weeks, etc.
  155.  
  156. Example - My CASIO Data Bank watch gains about 8 seconds a week.
  157.           My Amiga 3000 loses about 4 seconds each week.
  158.  
  159.  
  160.  
  161. 2.0 Recommendation:
  162.  
  163.    2.1  - Use this program at least once a month to keep in 'sync' with the
  164.           Atomic Clock.
  165.  
  166.    2.2  - Use the example AmiTCP:db/user-startnet file to atuomatically
  167.           'access' the clock.
  168.  
  169.    2.3  - Use the "Events" service in Miami to run everytime you log on.
  170.           Add it to "Events" in Miami as follows:
  171.    (Doing this automatically runs Atomic.rexx everytime you use Miami!)
  172.  
  173.       2.3.1) Start Miami
  174.       2.3.2) Select "Events"
  175.       2.3.3) Select the "Online - Filename Box" and enter
  176. #            's:atomic.rexx' (no quotes, and the "n" is for NO DST-
  177.              change this to y in the summer)
  178.       2.3.4) Select "Console name" box and enter:
  179. #             CON:2/10/640/300/Atomic Clock/AUTO/CLOSE
  180. #             Recommend larger window if displaying averages
  181.  
  182. # 3.0 Program Operation:
  183.  
  184.    3.1  - Starts with or without DST or AVG display ARGs
  185.  
  186.    3.2  - Recommend using as follows:
  187. #         >s:atomic.rexx     or    >s:atomic.rexx a
  188. #         (The 'a' means display average connect time for each server)
  189.  
  190.  
  191. #     3.2.1 Now also uses the 'a' option as follows:
  192. #         >s:atomic.rexx a  or    >s:atomic.rexx
  193. #         without 'a' ARG, uses AVG field in atomic.conf
  194. #      (This displays average connect time for all servers by analyzing the
  195. #      current log file = Default time is 0.1)
  196. #         Unit of measure is SECONDS
  197.  
  198. #  3.3  - Optional start using ICON (uses ARGs from atomic.conf)
  199.  
  200.    3.4  - Displays the ATOMIC CLOCK start up screen
  201.  
  202.    3.5  - Checks to see if the TCP: device is available
  203. #     3.5.1 - Reads config file
  204. #     3.5.2 - Analyzes log file
  205. #     3.5.3 - Displays avergae connect time (if AVG field is 'YES'
  206.               or if 'a' parameter is passed as ARG) i.e.
  207.               >s:atomic.rexx a
  208.  
  209.    3.6  - Reads the Atomic Clock
  210. #     3.6.1 - Checks Server Health
  211. #     3.6.2 - Calculates if Daylight Savings Time or Standard Time
  212.  
  213.    3.7  - Sets your computer to sync with the Atomic Clock
  214.  
  215.    3.8  - Computes your Timezone (based upon locale.prefs)
  216.  
  217.    3.9  - Readjusts your clock based upon timezone
  218.  
  219.    3.10 - Computes and displays the differences in your system clock
  220.  
  221. #  3.11 - Logs connection in s:atomic.log file
  222.  
  223.  
  224.  
  225. 4.0 Other Suggestions:
  226.  
  227.    4.1 - Add to your ToolsDaemon as follows:
  228.          -- Program Type - CLI
  229. #        -- s:atomic.rexx
  230.  
  231. #  4.2 - OVERRIDE mode (Applies to DST users ONLY)
  232.          --Use a parameter on the day of a DST or ST change to ensure your
  233.            timezone is NOT changed until 0200 local, or else the program
  234.            will automatically change to DST or ST at 0200 UTC.
  235.  
  236.            NOT OVERRIDING WILL result in a change to your clock causing a 1
  237.            hour difference until the 'official' changeover
  238.  
  239.            This may be acceptable for most users.
  240.  
  241.            The duration of your 'inaccuracy' is dependent upon number of
  242.            hours your timezone differs from UTC and when you connect before
  243.            and after a change.
  244.  
  245.            Atomic.rexx does NOT automatically change your system clock to
  246.            DST (or ST) until you connect to a server!  In other words, you
  247.            should run this program as soon as possible AFTER a UTC change.
  248.  
  249.  
  250. 5.0 Bug Reports
  251.  
  252.    5.1 - Immediately report all bugs and provide the following:
  253.          -- Atomic.rexx version
  254.          -- AmigaDOS version
  255.          -- TCP program name and version (i.e. AmiTCP 4.2, MIAMI 3.0)
  256.          -- Timezone
  257.  
  258.  
  259.  
  260. 6.0 Future Enhancements planned???
  261.  
  262. #  6.1 - Compile a C version
  263.  
  264. #  6.2 - Write REBOL or Perl version?
  265.  
  266.  
  267.  
  268. Have fun...   ;)
  269.  
  270. John...I REALLY DO like this Amiga!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  271.  
  272.  
  273.